In general, in an information processing system in which data is stored in a plurality of nodes in a multiplexed manner, such as NoSQL® which is typified by distributed key value store (KVS), alive monitoring is performed on all the nodes by each of the nodes.
Here, the term “node” represents an information processing apparatus including a central processing unit (CPU), a main memory, and a disk device. The nodes are connected to one another through a network. The term “alive monitoring” represents that each of the nodes performs monitoring to determine whether the other nodes perform normal operation. An information processing system functions as a distributed storage system. In the information processing system, the individual nodes function as storage devices which store data in a distributed manner.
A technique is disclosed in which, in a distributed database system including a plurality of nodes which individually store replicas, a master node receives alive messages from the other nodes for alive monitoring (refer to Japanese National Publication of International Patent Application No. 2012-504807, for example). The term “replica” represents a copy of data.
However, there arises a problem in that, when the master node or each of the nodes performs the alive monitoring on all the other nodes, overhead of the alive monitoring becomes large. For example, each of nodes which do not share replicas is not desired to perform a recovery process on the other nodes even when a failure of one of the other nodes is detected. Accordingly, alive monitoring performed between the nodes which do not share replicas is unproductive.
An object of one aspect of the present technique is to reduce overhead of alive monitoring.